0 REM THE TRANSACTOR VOLUME 6 ISSUE 02 PAGE 50 1 REM C64 BBS LINK 2 REM A SIMPLE DATABASE FOR YOUR BBS NUMBERS 3 REM THE PROGRAM "SORT64" MUST BE IN MEMORY AT $C100 4 REM IF X=0 THEN X=1 : LOAD "SORT64",8,1 5 DIM N$(500):GOTO200 6 SAVE"@0:64 BBS LINK",8:VERIFY"64 BBS LINK",8:STOP 10 HI=INT(N/256):LO=N-HI*256:RETURN 20 N=RC:GOSUB10:PRINT#15,"P"CHR$(2+96)CHR$(LO)CHR$(HI)CHR$(PS) 25 RETURN 30 INPUT#15,A,Z$,C,D:PRINT:PRINTWT$;A;YL$;" ";Z$;GY$;C;" ";D:RETURN 40 PRINT:PRINTTAB(11)GY$"INSERT MASTER DISK" 41 GETA$:IFA$=""GOTO41 42 RETURN 50 POKE53265,PEEK(53265)AND239:RETURN 60 POKE53265,PEEK(53265)OR16:RETURN 200 OPEN15,8,15:PRINTCHR$(14) 205 CL$=CHR$(147):WT$=CHR$(5):GY$=CHR$(155):CY$=CHR$(159):CU$=CHR$(145) 210 RT$=CHR$(13):YL$=CHR$(158) 215 POKE53281,0:POKE53280,6 220 PRINTCL$:PRINTTAB(14)GY$" 64 BBS LINK":FORA=1TO40:PRINTYL$"-";:NEXT:PRINT 225 PRINTTAB(16)WT$;CU$;"BOB HAYES":FORA=1TO40:PRINT"-";:NEXT:PRINT 230 X=7 240 PRINTTAB(X)WT$"1> "GY$"CREATE FILE" 250 PRINTTAB(X)WT$"2> "GY$"ENTER NEW RECORD" 260 PRINTTAB(X)WT$"3> "GY$"MODIFY EXISTING RECORD" 280 PRINTTAB(X)WT$"4> "GY$"PRINT LIST"WT$ 290 PRINT:PRINTTAB(X);:POKE19,64:INPUT"SELECT:";S$:PRINT:POKE19,0 300 S=VAL(S$):IFS>5ORS<1GOTO290 310 ON S GOTO 320,400,600,700 320 PRINTCL$;CR$;:POKE19,64:INPUT"APPROX SIZE: ";SZ:PRINT:POKE19,0 325 GOSUB40 330 OPEN2,8,2,"0:DATA,L,"+CHR$(77) 335 RC=SZ:PS=1:GOSUB20 336 PRINT#2,"LAST";RT$:CLOSE2 340 OPEN2,8,2,"@0:POINT,P,W":X=1:PRINT#2,X;RT$:CLOSE2 350 RUN 400 PRINTCL$:GOSUB30 405 PRINT:PRINTWT$"NAME/BBS = 20 CHARS":PRINT"PHONE # = 12 CHARS" 410 PRINT"HANDLE/NAME = 20 CHARS":PRINT"PASSWORD = 20 CHARS" 420 PRINT:POKE19,64:PRINTCY$"NAME/BBS:"WT$;:INPUT X$:PRINT:POKE19,0:REM WHITE 425 IFX$<>"*"THENB$=X$ 430 POKE19,64:PRINTCY$"PHONE # :"WT$;:INPUT X$:PRINT:POKE19,0:REM CYAN/WHITE 435 IFX$<>"*"THENP$=X$ 440 POKE19,64:PRINTCY$"HANDLE :"WT$;:INPUT X$:PRINT:POKE19,0 445 IFX$<>"*"THENH$=X$ 450 POKE19,64:PRINTCY$"PASSWORD:"WT$;:INPUT X$:PRINT::POKE19,0 452 IFX$<>"*"THENC$=X$ 455 PRINT:PRINT:INPUT"SURE (Y/N/Q)";A$:IFA$="Q"THENRUN 460 IFA$="N"GOTO400 465 IFQQ=0THENQQ=1:GOSUB40 466 GOSUB50 470 OPEN2,8,2,"POINT":INPUT#2,K:CLOSE2 480 IF R <> 0 THEN K=R 485 OPEN2,8,2,"DATA" 490 RC=K 500 PS=1:GOSUB20:PRINT#2,LEFT$(B$,20);RT$ 510 PS=22:GOSUB20:PRINT#2,LEFT$(P$,12);RT$ 520 PS=35:GOSUB20:PRINT#2,LEFT$(H$,20);RT$ 530 PS=56:GOSUB20:PRINT#2,LEFT$(C$,20);RT$ 540 CLOSE2 550 IF R <> 0 THEN GOSUB60:RUN 560 K=K+1:OPEN2,8,2,"@0:POINT,P,W":PRINT#2,K;RT$:CLOSE2:GOSUB60 570 GOTO400 600 PRINTCL$;YL$"ENTERING A * WILL LEAVE DATA SAME":PRINT 605 CH=0:PRINTWT$;:INPUT"INPUT THE ENTRY # FOR CHANGES";CH 610 IFCH=0THENRUN 620 R=CH:RC=CH:QA=1:OPEN2,8,2,"DATA":GOSUB820:CLOSE2:GOTO400 700 PRINTCL$"ENTER PRINTER TYPE:":PRINT 710 PRINTGY$"A) 1525/MPS 801, B) 1526/MPS 802" 720 PRINT:INPUT"TYPE";A$:IFA$<>"A"ANDA$<>"B"GOTO700 725 PRINTCL$;WT$:INPUT"PPER/OWERCASE";C$:IFC$<>"U"ANDC$<>"L"GOTO725 730 IFA$="A"ANDC$="L"THEN OPEN4,4:PRINT#4,CHR$(17):GOTO750 732 IFA$="B"ANDC$="L"THENOPEN4,4,7:PRINT#4,CHR$(17):GOTO750 734 OPEN4,4 750 PRINT#4," NAME/BBS ";:REM 3 SPACES/14 SPACES 760 PRINT#4," PHONE NUMBER ";:REM 2 SPACES 770 PRINT#4,"HANDLE ";:REM 15 SPACES 780 PRINT#4,"PASSWORD ";RT$:REM 12 SPACES 782 FORA=1TO80:PRINT#4,"-";:NEXT 785 OPEN2,8,2,"POINT":INPUT#2,K:CLOSE2 790 OPEN2,8,2,"DATA" 800 FORA=1TOK-1 810 RC=A 820 PS=1:GOSUB20:INPUT#2,B$ 825 PS=22:GOSUB20:INPUT#2,P$ 830 PS=35:GOSUB20:INPUT#2,H$ 835 PS=56:GOSUB20:INPUT#2,C$ 836 IFQA=1THENQA=0:RETURN 840 REM 845 IFLEN(B$)<20THENB$=B$+".":GOTO845 850 IFLEN(P$)<12THENP$=P$+" ":GOTO850 855 IFLEN(H$)<20THENH$=H$+" ":GOTO855 860 IFLEN(C$)<20THENC$=C$+" ":GOTO860 861 REM 862 REM 863 IFA<10THENN$(A)=STR$(A)+" "+B$+".."+P$+" "+H$+" "+C$:GOTO870 865 N$(A)=STR$(A)+" "+B$+".."+P$+" "+H$+" "+C$ 870 NEXT:CLOSE2 875 REM 880 SRT=12*4096+256 890 SYS(SRT),N$,1,K-1,4,23,A 900 FORA=1TOK-1:IFMID$(N$(A),5,1)="@"GOTO902 901 PRINT#4,N$(A) 902 GETA$:IFA$=""GOTO906 904 GETA$:IFA$=""GOTO904 906 NEXT 910 PRINT#4:CLOSE4:RUN 920 REM *** DELETE LINES 890- FOR LISTING 2 ***